R&D is a thing? What do they do there? Prototyping/pbr research?
Research & Development is very much a thing! Heck the average pay is just over $90k USD per year!
"
The research and development (R&D) engineer for computer software is an integral part of a modern R&D team. Like other members of the R&D team, the computer software engineer's primary focus is designing and creating an innovative new product. The computer software engineer, for example, might design custom software that will allow for more efficient data gathering for the specific project. They also may design a new statistical algorithm that will better analyze the collected data because it is much more adept at respecting the constraints of the system being developed.
Aside from optimizing the research process, the computer software engineer may also work on the software needed for the completed project. In creating software controls, the computer software engineer may optimize existing control software or may write a completely new program to control the anticipated final product.
A computer software engineer usually works in an office environment for a technology-focused company, and travel is not usually required.
Computer software R&D engineers must be well-versed in the scientific method. Furthermore, they must have an in-depth understanding of various computer programing languages such as C, C++, C#, and Java. These software engineers must also have a good understanding of Linux environments. Thus, due to the highly technical and scientific nature of the position, at a minimum a bachelors degree in computer science, physics, or engineering is required, with a preference for a masters degree or Ph.D.
Research & Development (R&D) Engineer, Computer Software Tasks
Write, modify, and debug software for operating systems.
Write kernel code for real-time or multitasking operating systems, including device drivers.
Use kernel debuggers, system dumps, and assembly language, as well as higher level languages.
Test and document software for operating systems.
Write, modify, and debug software for server applications.
Dedicated R&D positions in the games industry are comparatively rare. You'll likely only see them at very, very large studios, if at all.
Most development positions will involve some varying amount of R&D (usually during the early phases of a project) into varying subject matter. Most of the time, you'll see positions related to graphics and AI doing the most of it. Often this "R&D" won't be so much developing entirely new methods of accomplishing things (although sometimes it does), but researching how to adapt other people's entirely new methods of accomplishing things to the project at hand.
I disagree with at least parts of the above replies. The PayScale source is talking about general software R&D, not what it means for games, and while dedicated positions are comparatively rare, part of the reason they are more common than you might think is because they aren’t just for the very large companies. That some companies have created their own fancy terms for it (“Advanced Technology Division” for Square Enix for example or “Core Tech” at Deep Silver Dambuster Studios) may add to the illusion that it is rarer than it is.
Perhaps the best way to answer is to show actual R&D recruiting pages from companies, and for the ones where I actually worked I can give more details.
The R&D team works on the engine, which was built by them from scratch. Since the engine is fairly fully fledged now, current tasks are mostly related to maintenance and optimizations, but new features are still constantly being added, from various types of editors, network code, new graphics API support, tool-chain improvements, etc.
The team is led by tri-Ace CEO/CTO Yoshiharu Gotanda, who is responsible for helping advance the state of real-time physically based rendering. A mathematical prodigy, he creates new rendering equations himself and gives presentations at Siggraph. http://research.tri-ace.com/
While a majority of their R&D department was dedicated to the Luminous Studio game engine and Final Fantasy XV, members in this department are actually more free-floating between all the projects as needed. There are distinct teams within it dedicated to graphics, effects, sound, animation/physics, etc.
But team members don’t only work on Luminous Studio. They are sometimes moved to other projects where they will have to apply their skills to a new code base.
They cover the full R&D spectrum, meaning they accommodate people who consider themselves more academic and less of a programmer, people who prefer just to implement, and everything between. The academics create new techniques and publish new whitepapers, pure programmers take white papers and implement them (from any source, not just the internal academics).
The schedule is a bit more hectic, but that doesn’t mean more crunch time than you would expect anywhere else. It mainly means shifting gears as your tasks change dramatically.
Deep Silver Dambuster Studios Ltd. (~100 employees)
I won’t discuss why they temporarily removed their “Core Technology” (what they call R&D) positions, but here is how it looked 1 year ago:
Senior Programmer – Core Technology
Deep Silver Dambuster Studios have an exciting opportunity within their highly talented and experienced Core Technology department for a Senior Programmer.You will be working on an established AAA title for Next Gen Consoles and PC platforms and your primary remit will be to help keep our Engine, Editor and Tools on the cutting edge. We’re looking for someone who understands the processes involved in making a first-class, AAA modern game, and wants to make a big difference to our development team’s workflow.
Main Duties and Responsibilities:
Work with the Core Technology team leads to maintain and optimise existing systems, develop new engine features and build tools that give greater efficiency to our development pipeline. As a senior member of the Core Technology team you will be expected to work closely with other team members, leading by example and helping to ensure that a high level of coding standards are achieved and maintained.
The R&D efforts here go towards maintaining an engine—optimizing, fixing bugs, adding features that might be needed for a game, etc.—and its tool chain. As game technology continues to move forward, there is a never-ending slew of new graphics techniques to add, new texture formats to support, tools to create and view those textures, etc.
Development here is more closely tied to the game team, but many specific tasks are not. Crunch doesn’t happen that often.
I can’t give too many details on the next few because I have never worked there, but here are a few more I know exist. I let their recruiting pages describe their roles.
Naughty Dog
They call it ICE (Initiative for a Common Engine).
They call it their “Tech Team”. Since they are part of Sony, I expect some overlap with ICE, but as it is its own studio they will have their own set of tasks, schedules, points of focus, and demands.
Tiny studios tend not to have these positions, but medium, large, and X-large do. There just seems to be so few R&D positions out there because many studios either call them something fancy or do not have a term for them at all. But almost every company is either making its own engine or using a 3rd-party engine such as Unreal Engine 4, and in both cases there is a need for people to keep these updated, add feature support, optimize, and fix bugs.
Also note that even the Japanese companies and Guerrilla Games in Amsterdam seek English-speaking people. R&D means reading research papers and going to Siggraph and other events, so regardless of the country R&D positions always request English skills.
L. Spiro
I restore Nintendo 64 video-game OST’s into HD! https://www.youtube.com/channel/UCCtX_wedtZ5BoyQBXEhnVZw/playlists?view=1&sort=lad&flow=grid
That's a good point, though I consider Engine positions to fall under jpetrie's description of, "Do some R&D, but not all R&D", as engine positions are going to be doing a lot of non-R&D work.
Yeah when I was at a massive developer with 400 staff, they had a massive internal engine/tech team. Many of those people were directly attached to games, making sure that any engine issues specific to that game were solved, but others were just advancing the state of the engine in general, not for any one specific game. Others still were working on engine features that maybe might be used by a specific game that's still just in the idea/concept stage, exploring whether such a game would be possible...
On the other hand, when at not-so-massive studios with <50 staff, R&D is done as a regular part of your job, for the specific game that you're making, juggled amongst your other duties. e.g. working as a graphics programmer, tasked with implementing, say ambient lighting, I'd get a very small amount of time to research the field to discover options, pick an option that fits our requirements, and implement it into the engine. Everything has to be scheduled, so you'd give a time estimate at the start which would be used by management... so if you spent too long researching options, you'd have less time for implementation and would end up cutting corners. As a result, the majority of our R&D was done as stepping stones from one game to the next -- every game you'd work on the same problems and improve them slightly, or pick a few bits of tech that you get to fully rewrite this cycle.
I consider Engine positions to fall under jpetrie's description of, "Do some R&D, but not all R&D", as engine positions are going to be doing a lot of non-R&D work.
R&D means research and development. If you're building the engine, that's development.
One online definition is "work directed towards the innovation, introduction, and improvement of products and processes." This is exactly what a good game engine is there for - to help improve and innovate future products.